//vee-validate插件：表单验证区域’
import Vue from "vue";
import VeeValidate from "vee-validate";
//中文提示信息
import zh_CN from "vee-validate/dist/locale/zh_CN";
Vue.use(VeeValidate);

//表单验证
VeeValidate.Validator.localize("zh_CN", {
  messages: {
    ...zh_CN.messages,
    is: (field) => `${field}必须与密码相同`, // 修改内置规则的 message，让确认密码和密码相同
  },
  attributes: {
    phone: "手机号",
    code: "验证码",
    password: "密码",
    password1: "确认密码",
    agree:'协议'
  },
});

//自定义校验规则
VeeValidate.Validator.extend("tongyi", {

  getMessage: (field) => field + "必须同意",
  validate: (value) => {
    return value;
  },
})

VeeValidate.Validator.extend('phone', {
  getMessage: (field) => field + "格式不正确",
  validate: value => {
      return /^1[2-9]\d{9}$/.test(value)
  },
})

// ^ 表示字符串的开头
// $ 表示字符串的结尾
// /^\d{9}$/表示后九位是随意数字
// [0-9] 表示0到9的数字字符
// [0-9]+ 表示由0到9数字字符组成的字符串,[A-Z]+和[a-z]+以此类推
// (?!^[0-9]+$)表示字符串不能是全数字的字符串
// (?!^[A-Z]+$)表示字符串不能是全大写英文字母的字符串
// (?!^[a-z]+$)表示字符串不能是全小写英文字母的字符串
// ^在中括号里面表示取反的意思
// [^A-z0-9]+ 表示除英文大小写字母和数字外的字符组合
// (?!^[^A-z0-9]+$)表示字符串不能是除英文大小写字母和数字外的字符串
// ^.{6,20}$ 表示由任意字符组成的6到20位的字符串
// (?!^[0-9]+$)(?!^[A-Z]+$)(?!^[a-z]+$)(?!^[^A-z0-9]+$)^.{6,20}$ 表示由大小写英文字母和数字混合组成的6到20个字符的字符串